home *** CD-ROM | disk | FTP | other *** search
- refresh = function()
- {
- if(SCROLLHEIGHT == null)
- {
- SCROLLHEIGHT = 350;
- }
- trace("* refresh()");
- trace("-- SCROLLHEIGHT: " + SCROLLHEIGHT);
- trace("-- targetHeight: " + targetHeight);
- mScrollTrack._height = SCROLLHEIGHT - 22;
- mArrow_down._y = SCROLLHEIGHT - 11;
- maxTargetPos = 0;
- targetHeight = target._height + 20;
- minTargetPos = maxTargetPos - targetHeight + SCROLLHEIGHT;
- targetRange = Math.abs(maxTargetPos - minTargetPos);
- if(targetHeight < SCROLLHEIGHT)
- {
- _visible = 0;
- }
- else
- {
- _visible = 1;
- }
- scrolling = dragging = 0;
- var _loc1_ = SCROLLHEIGHT / targetHeight;
- if(_loc1_ < 1)
- {
- mScroller._height = _loc1_ * mScrollTrack._height;
- mScroller._visible = 1;
- }
- else
- {
- mScroller._visible = 0;
- }
- minScrollerPos = mScrollTrack._y;
- maxScrollerPos = minScrollerPos + mScrollTrack._height - mScroller._height;
- scrollerRange = Math.abs(mScrollTrack._height - mScroller._height);
- SCROLLSPEED = 5;
- scrollerColor = new Color(mScroller);
- updateScroller();
- };
- mArrow_up.onPress = function()
- {
- onEnterFrame = scrollUp;
- };
- mArrow_down.onPress = function()
- {
- onEnterFrame = scrollDown;
- };
- mScroller.onPress = function()
- {
- var _loc1_ = this;
- _loc1_.startDrag(0,_loc1_._x,minScrollerPos,_loc1_._x,maxScrollerPos);
- _loc1_.onMouseMove = _loc1_._parent.drag;
- };
- mScroller.onRollOver = function()
- {
- scrollerColor.setRGB(6443289);
- };
- mScroller.onRollOut = function()
- {
- scrollerColor.setRGB(12170390);
- };
- this.onMouseUp = function()
- {
- onEnterFrame = null;
- onMouseMove = null;
- mScroller.stopDrag();
- updateScroller();
- };
- scrollUp = function()
- {
- if(target._y < maxTargetPos)
- {
- target._y += SCROLLSPEED;
- }
- if(target._y > maxTargetPos)
- {
- target._y = maxTargetPos;
- }
- updateScroller();
- };
- scrollDown = function()
- {
- if(target._y > minTargetPos)
- {
- target._y -= SCROLLSPEED;
- }
- if(target._y < minTargetPos)
- {
- target._y = minTargetPos;
- }
- updateScroller();
- };
- drag = function()
- {
- var _loc1_ = mScroller._y - minScrollerPos;
- var _loc2_ = _loc1_ / scrollerRange;
- target._y = maxTargetPos - _loc2_ * targetRange;
- };
- updateScroller = function()
- {
- var _loc1_ = maxTargetPos - target._y;
- var _loc2_ = _loc1_ / targetRange;
- mScroller._y = minScrollerPos + _loc2_ * scrollerRange;
- };
- refresh();
-